package com.ling.pl.autoproject.definition.application.model;

import com.ling.pl.core.commons.annotation.Dict;
import com.ling.pl.core.commons.annotation.ModelProperty;

import javax.persistence.Column;

public class ApplicationMenuItem {
    @Column(name = "APPLICATION_MENU_ID", length = 36)
    @ModelProperty(comment = "菜单id")
    String applicationMenuId;

    @Column(name = "PARENT_ID", length = 36)
    @ModelProperty(comment = "上级id")
    String parentId;

    @Column(name = "MENU_ITEM_TYPE", length = 250)
    @ModelProperty(comment = "菜单项类型")
    @Dict(code = "builder.application.menuItemType", des = "菜单项,分隔符,用户自定义项,菜单引用")
    String menuItemType;

    @Column(name = "NAME", length = 150)
    @ModelProperty(comment = "中文名称")
    String name;

    @Column(name = "CODE", length = 150)
    @ModelProperty(comment = "代码名称")
    String code;

    @Column(name = "ICON", length = 150)
    @ModelProperty(comment = "图标")
    String icon;

    @Column(name = "TITLE", length = 150)
    @ModelProperty(comment = "标题语言资源")
    String title;

    @Column(name = "TITLE_I18N", length = 150)
    @ModelProperty(comment = "标题语言资源")
    String titleI18n;

    @Column(name = "APPLICATION_FEATURE_ID", length = 36)
    @ModelProperty(comment = "应用功能")
    String applicationFeatureId;

    @Column(name = "IS_USER_CLOSE_ABLE")
    @ModelProperty(comment = "禁止用户关闭")
    Boolean isUserCloseAble;

    @Column(name = "IS_DEFAULT_OPEN")
    @ModelProperty(comment = "默认打开")
    Boolean isDefaultOpen;

    @Column(name = "IS_CLOSE_SIDERBAR")
    @ModelProperty(comment = "执行后关闭边栏")
    Boolean isCloseSideBar;

    @Column(name = "IS_HIDDEN_ITEM")
    @ModelProperty(comment = "隐藏项")
    Boolean isHiddenItem;

    @Column(name = "IS_ENABLE")
    @ModelProperty(comment = "是否启用")
    Boolean isEnable = true;

    @Column(name = "IS_NEW")
    @ModelProperty(comment = "新功能")
    Boolean isNew;

    @Column(name = "IS_HOT")
    @ModelProperty(comment = "热门功能")
    Boolean isHot;
}
